/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package models.dao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.LinkedList;
import java.util.List;
//import models.entity.Venta;
import utilidades.DataBaseInstance;

/**
 *
 * @author Cristian
 */
public class VentaDao {
    
//     protected Connection getConnection() {
//        return DataBaseInstance.getInstanceConnection();
//    }
//
//    public List<Venta> findAll() {
//        List<Venta> listaProducto = new LinkedList<Venta>();
//        ResultSet result = null;
//
//        try {
//
//            String query = "SELECT * FROM productos";
//            Statement stmt = getConnection().createStatement();
//            result = stmt.executeQuery(query);
//
//            while (result.next()) {
//                Venta producto = new Venta();
//                producto.setId(result.getInt("id"));
//                producto.setNombre(result.getString("nombre"));
//                producto.setPrecio(result.getInt("precio"));
//                producto.setCantidad(result.getInt("cantidad"));
//                listaProducto.add(producto);
//            }
//
//            result.close();
//            stmt.close();
//            closeConnection();
//
//        } catch (SQLException se) {
//            System.out.println(se.toString());
//            System.err.println("Se ha producido un error de BD.");
//            System.err.println(se.getMessage());
//        }
//
//        return listaProducto;
//    }
//
//    public Venta findById(int productoId) {
//        ResultSet result = null;
//        Venta producto = null;
//
//        try {
//            // Componemos la sentencia SQL para obtener los productos.
//            String query = "SELECT * FROM productos WHERE  id = ?";
//
//            // Ejecutamos la query y obtenemos el resultado.
//            PreparedStatement stmt = getConnection().prepareStatement(query);
//            stmt.setInt(1, productoId);
//            result = stmt.executeQuery();
//
//            // Vemos si no ha devuelto ningun resultado.
//            if (!result.next()) {
//                throw new SQLException();
//            }
//
//            // Construimos una VO para el producto.
//            producto = new Venta();
//            producto.setId(result.getInt("id"));
//            producto.setNombre(result.getString("nombre"));
//            producto.setPrecio(result.getInt("precio"));
//            producto.setCantidad(result.getInt("cantidad"));
//
//            result.close();
//            stmt.close();
//            closeConnection();
//
//        } catch (SQLException se) {
//            System.err.println("Se ha producido un error de BD.");
//            System.err.println(se.getMessage());
//        }
//
//        return producto;
//    }
//
//    public void save(Venta venta) {
//
//        PreparedStatement saveProduct;
//        try {
//
//            if (venta.getId() == 0) {
//                saveProduct = getConnection().prepareStatement(
//                        "INSERT INTO productos (nombre ,precio ,cantidad) "
//                        + "VALUES (?, ?, ?)");
//                saveProduct.setString(1, venta.getNombre());
//                saveProduct.setInt(2, venta.getPrecio());
//                saveProduct.setInt(3, venta.getCantidad());
//                System.out.println("INSERT INTO ....");
//            } else {
//                saveProduct = getConnection().prepareStatement(
//                        "UPDATE productos SET nombre = ?, precio = ?, cantidad = ? WHERE  id = ?");
//                saveProduct.setString(1, venta.getNombre());
//                saveProduct.setInt(2, venta.getPrecio());
//                saveProduct.setInt(3, venta.getCantidad());
//                saveProduct.setInt(4, venta.getId());
//            }
//
//            saveProduct.executeUpdate();
//            closeConnection();
//        } catch (SQLException se) {
//            System.err.println("Se ha producido un error de BD.");
//            System.err.println(se.getMessage());
//        }
//    }
//
//    public void delete(Venta venta) {
//        PreparedStatement saveProduct;
//        try {
//
//            if (venta.getId() > 0) {
//                saveProduct = getConnection().prepareStatement(
//                        "DELETE FROM productos WHERE id = ?");
//
//                saveProduct.setInt(1, venta.getId());
//                saveProduct.executeUpdate();
//            }
//
//
//            closeConnection();
//        } catch (SQLException se) {
//            System.err.println("Se ha producido un error de BD.");
//            System.err.println(se.getMessage());
//        }
//    }
//
//    protected void closeConnection() {
//        DataBaseInstance.closeConnection();
//    }
}
